package com.xique.park.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.xique.park.bean.domain.ParkSettlementRecord;
import com.xique.park.bean.dto.ParkSettlementRecordExportDto;
import com.xique.park.bean.dto.SettlementStatisticsDto;
import com.xique.park.bean.request.web.record.SettlementRecordRequest;
import org.apache.ibatis.annotations.Param;

/**
 * 结算记录 mapper 接口
 *
 * @author WLD
 */
public interface ParkSettlementRecordMapper extends BaseMapper<ParkSettlementRecord> {

    /**
     * 结算记录金额统计
     *
     * @param settlementRecordRequest 金额统计请求参数
     * @return 结算记录金额统计结果
     */
    SettlementStatisticsDto statisticsAmount(SettlementRecordRequest settlementRecordRequest);

    /**
     * 查询待导出的结算记录
     *
     * @param page                    分页参数
     * @param settlementRecordRequest 请求参数
     * @return 分页查询结果
     */
    IPage<ParkSettlementRecordExportDto> selectExportPage(@Param("page") Page<ParkSettlementRecordExportDto> page,
                                                          @Param("request") SettlementRecordRequest settlementRecordRequest);
}
